QuickOPC User's Guide and Reference
WaitForMultipleItems(IEasyDAClient,IReadOnlyList<ValueTuple<DAItemGroupArguments,Func<EasyDAItemChangedEventArgs,Boolean>>>,Int32) Method



OpcLabs.EasyOpcClassic Assembly > OpcLabs.EasyOpc.DataAccess.Extensions Namespace > IEasyDAClientExtension2 Class > WaitForMultipleItems Method : WaitForMultipleItems(IEasyDAClient,IReadOnlyList<ValueTuple<DAItemGroupArguments,Func<EasyDAItemChangedEventArgs,Boolean>>>,Int32) Method
The client object that will perform the operation.
List of tuples, where each tuple consists of OPC-DA item group arguments, and a predicate on OpcLabs.EasyOpc.DataAccess.OperationModel.EasyDAItemChangedEventArgs determining when the wait is complete.
The number of milliseconds to wait, or System.Threading.Timeout.Infinite to wait indefinitely.
Subscribes to the specified OPC-DA items, and monitors their data until the predicates specified for each item become true, or the alloted time elapses.
Syntax
'Declaration
 
<ExtensionAttribute()>
<ElementsNotNullAttribute()>
<NotNullAttribute()>
Public Overloads Shared Function WaitForMultipleItems( _
   ByVal client As IEasyDAClient, _
   ByVal argumentsAndExitPredicateList As IReadOnlyList(Of ValueTuple(Of DAItemGroupArguments,Func(Of EasyDAItemChangedEventArgs,Boolean))), _
   ByVal millisecondsTimeout As Integer _
) As DAVtqResult()
'Usage
 
Dim client As IEasyDAClient
Dim argumentsAndExitPredicateList As IReadOnlyList(Of ValueTuple(Of DAItemGroupArguments,Func(Of EasyDAItemChangedEventArgs,Boolean)))
Dim millisecondsTimeout As Integer
Dim value() As DAVtqResult
 
value = IEasyDAClientExtension2.WaitForMultipleItems(client, argumentsAndExitPredicateList, millisecondsTimeout)

Parameters

client
The client object that will perform the operation.
argumentsAndExitPredicateList
List of tuples, where each tuple consists of OPC-DA item group arguments, and a predicate on OpcLabs.EasyOpc.DataAccess.OperationModel.EasyDAItemChangedEventArgs determining when the wait is complete.
millisecondsTimeout
The number of milliseconds to wait, or System.Threading.Timeout.Infinite to wait indefinitely.

Return Value

The function returns an array of OpcLabs.EasyOpc.DataAccess.OperationModel.DAVtqResult objects. The indices of elements in the output array are the same as those in the input list, argumentsAndExitPredicateList.
Exceptions
ExceptionDescription
A null reference (Nothing in Visual Basic) is passed to a method that does not accept it as a valid argument.
The value of an argument is outside the allowable range of values as defined by the invoked method.
Requirements

Target Platforms: .NET Framework: Windows 10 (selected versions), Windows 11 (selected versions), Windows Server 2012, Windows Server 2016; .NET Core, .NET 5, .NET 6: Linux, macOS, Microsoft Windows

See Also

Reference

IEasyDAClientExtension2 Class
IEasyDAClientExtension2 Members
Overload List